home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
QRZ! Ham Radio 8
/
QRZ Ham Radio Callsign Database - Volume 8.iso
/
pc
/
files
/
t_sys5
/
unixkit.tgz
/
unixkit.tar
/
unixkit
/
common
/
asy.h
next >
Wrap
C/C++ Source or Header
|
1991-11-20
|
2KB
|
88 lines
#ifndef _ASY_H
#define _ASY_H
/* Unix version... sort of a merger of 8250.h and asy.h -- MJW */
#ifndef _GLOBAL_H
#include "global.h"
#endif
#ifndef _MBUF_H
#include "mbuf.h"
#endif
#ifndef _IFACE_H
#include "iface.h"
#endif
/* Read fifo control structure */
struct fifo {
char *buf; /* Ring buffer */
unsigned bufsize; /* Size of ring buffer */
char *wp; /* Write pointer */
char *rp; /* Read pointer */
unsigned short cnt; /* count of characters in buffer */
unsigned short hiwat; /* High water mark */
long overrun; /* count of sw fifo buffer overruns */
};
/* Asynch controller control block */
struct asy {
struct iface *iface;
struct fifo fifo;
int trigchar; /* Fifo trigger character */
char cts_flow_control;
char rlsd_line_control; /* RLSD indicates physical layer up/down */
#define RLSD_NONE 0
#define RLSD_DOWN 11 /* wierd values, to catch previous */
#define RLSD_UP 22
int speed; /* Line speed */
char *tty;
int IORser; /* Input file descriptor */
int IOWser; /* Output file descriptor */
long rxchar; /* Received characters */
long txchar; /* Transmitted characters */
};
extern struct asy Asy[];
extern unsigned Nasy; /* Actual number of asynch lines */
#define ASY_MAX 5 /* Five asynch ports allowed on the PC */
#define SLIP_MODE 0
#define AX25_MODE 1
#define NRS_MODE 2
#define UNKNOWN_MODE 3
#define PPP_MODE 4
/* In bsd_io.c: */
int asy_init __ARGS((int dev,struct iface *iface,char *arg1,char *arg2,
int16 bufsize,int trigchar,char cts,char rlsd,int16 speed));
int asy_ioctl __ARGS((struct iface *iface,int cmd,int set,int32 val));
void asy_output __ARGS((int dev,char *buf,unsigned short cnt));
int asy_send __ARGS((int dev,struct mbuf *bp));
int asy_speed __ARGS((int dev,int16 speed));
int asy_stop __ARGS((struct iface *iface));
int get_rlsd_asy __ARGS((int dev, int new_rlsd));
void asy_tx __ARGS((int dev,void *p1,void *p2));
int get_asy __ARGS((int dev));
int stxrdy __ARGS((int dev));
#ifdef PACKET
struct nitdrvr {
char *buffer; /* Currently allocated rx buffer */
struct iface *iface;
int IOser;
};
extern struct nitdrvr Nitdrvr[];
extern int Nnit;
struct tundrvr {
struct iface *iface;
int IOser;
};
extern struct tundrvr Tundrvr[];
extern int Ntun;
#endif /* PACKET */
#define NIT_MAX 3
#define TUN_MAX 3
#endif /* _ASY_H */